#!/usr/bin/env python3

import cv2 as cv
import numpy as np

img = cv.imread('../pic/轮廓图.png')
img_gray = cv.cvtColor(img, cv.COLOR_BGR2GRAY)  # 也可以直接加载灰度图像

ret, thresh = cv.threshold(img_gray, 127, 255, cv.THRESH_BINARY)
# 由于findContours会修改输入图像，因此这个返回值是原图像的一个副本，经过处理以便提取轮廓 版本差异有些版本直接修改原图像
# 用 _ 忽略第一个返回值
_, contours, hierarchy = cv.findContours(thresh, cv.RETR_TREE, cv.CHAIN_APPROX_SIMPLE)

img_copy = img.copy()
cv.drawContours(img_copy, contours, -1, (0, 0, 255), 5)

cv.imshow('img', img)

cv.imshow('img_dst', img_copy)

cv.waitKey()
cv.destroyAllWindows()
